1. Field of the Invention
This invention relates generally to a method for generating free-form surfaces, and, particularly, relates to a free-form surface generation method used in a 3D object shape processor. This invention can be applied to a free-form surface generation for a 3D shape which is defined by curve mesh.
2. Description of the Prior Art
In shape design by the use of Computer Aided Design (CAD) systems, one of the most important requirements is the capability to easily design a shape of complex free-form surfaces. When designing a shape of free-form surfaces, a designer may wish to have a CAD system having functions, for defining free-form surfaces, which are suitable for the design method to be used, are easy to use, and can be manipulated intuitively. Generally, a straight forward method of defining free-form surfaces may be to input the data of characteristic lines which define cross section lines and surface boundaries. In using those methods, the designer first defines curve mesh representing surface boundaries, then, interpolate free-form surfaces into the curve mesh. Unfortunately, the generated curve mesh can only roughly represent the intended shape. Nevertheless, when the curve mesh is interpolated, the resulting free-form surfaces must have the same shape as intended by the designer.
In general, curve mesh are comprised of various types of curves like the Bezier curve and the NURBS (nonuniform rational B-splines) curve. Also, irregular curve mesh, which has the faces of non-quadrilateral shape like a triangle and pentagon, may appear, depending on the shapes being designed. It is required that such curve mesh as comprised of various types of curves and/or as including some irregular faces be also interpolated by the free-form surfaces having the shape intended by the designer.
The Gregory patch and the rational boundary Gregory patch can be named as a typical representation of the free-form surface for smoothly interpolating irregular curve mesh. By the use of those free-form surface representations, irregular curve mesh having triangular or pentagonal faces can be interpolated with G.sup.1 continuity. However, since boundary curves can only be represented by the Bezier curve or a rational Bezier curve in those free-form surface representations, such composite curves as the NURBS curve cannot be used for boundaries.
Although the Gregory patch and the rational boundary Gregory patch can interpolate irregular curve mesh with G.sup.1 continuity, in the case of interpolating a non-quadrilateral face, interior curves for dividing the face are generated during the process of interpolation. These interior curves divide the non-quadrilateral face into more than one quadrilateral faces, which are then interpolated with the Gregory patch or the rational boundary Gregory patch. If each boundary curve of a quadrilateral face cannot be represented by the Bezier curve or the rational Bezier curve, this face is regarded as non-quadrilateral rather than quadrilateral, and interior curves are generated in the process of interpolation.
Composite curves appear, in particular, with cross sections produced by cutting free-form surfaces and with curve mesh including boundary curves for offset surfaces. Faces of such mesh are interpolated by a plurality of the Gregory patches, even if those faces are topologically a quadrilateral. Generation of interior curves is based on the shape of boundary curves, and a distortion may occur on the generated surfaces, depending on the shape of the boundary curves. In such a case, the resulting surface does not have the shape intended by the designer. In general, it is difficult to control the shape of interior curves by changing the shape of boundary curves.
On the other hand, for the NURBS surface, the existence of composite curves in curve mesh does not matter since boundary curves are represented by the NURBS curves. For the NURBS surface, however, it is difficult to interpolate irregular curve mesh smoothly. Furthermore, the continuity between surface patches depends on the knot vectors and control points. Thus, it is generally difficult to represent one surface by a set of patches with C.sup.n continuity.
As described above, there are prior arts for smoothly interpolating irregular curve mesh which does not have composite curves, and for smoothly interpolating regular curve mesh which has composite curves. It is difficult with prior arts, however, to interpolate free-form surfaces without any distortion into irregular curve mesh which has composite curves. Thus, there is a need for interpolating without any distortion irregular curve mesh which has composite curves.